package com.travelgroup.service;

import cn.dev33.satoken.util.SaResult;
import com.baomidou.mybatisplus.extension.service.IService;
import com.travelgroup.domain.dto.LoginDTO;
import com.travelgroup.domain.dto.UserDTO;
import com.travelgroup.domain.entity.User;
import com.travelgroup.exception.R;

public interface IUserService extends IService<User> {
    R<SaResult> loginByPassword(LoginDTO loginDTO);

    R<SaResult> loginByCode(LoginDTO loginDTO);

    R<String> sendCode(String email);

    R<String> verifyCode(LoginDTO loginDTO);

    R<String> verifyPassword(LoginDTO loginDTO);

    R<String> resetPassword(LoginDTO loginDTO);

    R<String> updateUserInfo(UserDTO userDTO);

    R<UserDTO> queryById(Long id);
}
